package com.itsu.interfaces.service;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.itsu.interfaces.entity.Comment;
import org.bson.types.ObjectId;

import java.util.List;

public interface CommentService {

    Long queryLikedCount(Object publishId);

    Long queryCommentCount(Object publishId);

    Long queryLovedCount(Object publishId);

    Long queryCommentStatus(ObjectId publishId, Long userId, Integer commentType);

    Long saveLoveComment(Comment comment);

    Long deleteLoveComment(Comment comment);

    Long saveLikeComment(Comment comment);

    Long deleteLikeComment(Comment comment);

    void saveComment(Comment comment);

    void deleteComment(Comment comment);

    List<Comment> getComments(ObjectId publishId);

    List<Comment> getComments(Comment comment);

    List<Comment> getComments(ObjectId publishId, Integer commentType, String order);

    Comment getComment(ObjectId commentId);
}
